package com.qph.app.system.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.qph.base.dao.BaseDao;
import com.qph.base.security.entity.Permission;
import com.qph.base.security.entity.Role;

/**
 * 角色管理
 * @author Administrator
 *
 */
public interface IRoleDao extends BaseDao<Role> {

	
	/**
	 * 删除角色下用户
	 * @param list
	 * @return
	 */
	public int delUsersByRoles(List<String> list);
	
	
	
	/**
	 * 删除角色下权限
	 * @param list
	 * @return
	 */
	public int delRolePerms(List<String> list);
	
	
	/**
	 * 保存角色用户
	 * @param users
	 * @param roleId
	 * @return
	 */
	public int saveRoleUsers(@Param("users")String[] users, @Param("role") String roleId);
	
	
	
	/**
	 * 删除角色用户
	 * @param users
	 * @param roleId
	 * @return
	 */
	public int delRoleUsers(@Param("users")String[] users, @Param("role") String roleId);
	
	
	
	
	/**
	 * 删除角色权限 
	 * @param roleId
	 * @return
	 */
	public int delRolePerm(String roleId);
	
	
	
	/**
	 * 保存角色权限
	 * @param perms
	 * @param roleId
	 * @return
	 */
	public int saveRolePerms(@Param("perms")String[] perms, @Param("role") String roleId);
	
	
	
	/**
	 * 按角色Id查询拥有的权限资源
	 * @param roleId
	 * @return
	 */
	public List<Permission> getPermListByRole(String roleId);
	
}
